package js 
{
	/**
	 * ...
	 * @author jsbr [me@jsbr.ca]
	 */
	[JSClass(export="false", script="false")]
	public var document:Document = new Document();
	

}
import js.element.HTMLElement;
internal class Document 
{
	private var _body:HTMLElement;
	
	public function Document() 
	{
		
		
		
	}
	
	/**
	 * Creates an element node
	 */
	public function createElement(name:String):HTMLElement { return null }
	
	/**
	 * Creates an element node
	 */
	public function getElementById(id:String):HTMLElement { return null }
	
	/**
	 * Returns the DOMImplementation object that handles this document
	 */
	public function get implementation():DOMImplementation 
	{
		
	}
	
	public function get body():HTMLElement 
	{
		return _body;
	}
	
	public function set body(value:HTMLElement):void 
	{
		_body = value;
	}
	

	/*

async	Specifies whether downloading of an XML file should be handled asynchronously or not	5	1.5	9	No
childNodes	Returns a NodeList of child nodes for the document	5	1	9	Yes
doctype	Returns the Document Type Declaration associated with the document	6	1	9	Yes
documentElement	Returns the root node of the document	5	1	9	Yes
documentURI	Sets or returns the location of the document	No	1	9	Yes
domConfig	Returns the configuration used when normalizeDocument() is invoked	 	 	No	Yes
firstChild	Returns the first child node of the document	5	1	9	Yes
implementation	Returns the DOMImplementation object that handles this document	No	1	9	Yes
inputEncoding	Returns the encoding used for the document (when parsing)	No	1	No	Yes
lastChild	Returns the last child node of the document	5	1	9	Yes
nodeName	Returns the name of a node (depending on its type)	5	1	9	Yes
nodeType	Returns the node type of a node	5	1	9	Yes
nodeValue	Sets or returns the value of a node (depending on its type)	5	1	9	Yes
strictErrorChecking	Sets or returns whether error-checking is enforced or not	No	1	No	Yes
text	Returns the text of a node and its descendants. IE-only property	5	No	No	No
xml	Returns the XML of a node and its descendants. IE-only property	5	No	No	No
xmlEncoding	Returns the XML encoding of the document	No	1	No	Yes
xmlStandalone	Sets or returns whether the document is standalone	No	1	No	Yes
xmlVersion	Sets or returns the XML version of the document	No	1	No	Yes



adoptNode(sourcenode)	Adopts a node from another document to this document, and returns the adopted node	 	 	No	Yes
createAttribute(name)	Creates an attribute node with the specified name, and returns the new Attr object	6	1	9	Yes
createAttributeNS(uri,name)	Creates an attribute node with the specified name and namespace, and returns the new Attr object	 	 	9	Yes
createCDATASection()	Creates a CDATA section node	5	1	9	Yes
createComment()	Creates a comment node	6	1	9	Yes
createDocumentFragment()	Creates an empty DocumentFragment object, and returns it	5	1	9	Yes
[x] createElement()	Creates an element node	5	1	9	Yes
createElementNS()	Creates an element node with a specified namespace	No	1	9	Yes
createEntityReference(name)	Creates an EntityReference object, and returns it	5	 	No	Yes
createProcessingInstruction(target,data)	Creates a ProcessingInstruction object, and returns it	5	 	9	Yes
createTextNode()	Creates a text node	5	1	9	Yes
[x] getElementById(id)	Returns the element that has an ID attribute with the given value. If no such element exists, it returns null	5	1	9	Yes
getElementsByTagName()	Returns a NodeList of all elements with a specified name	5	1	9	Yes
getElementsByTagNameNS()	Returns a NodeList of all elements with a specified name and namespace	No	1	9	Yes
importNode(nodetoimport,deep)	Imports a node from another document to this document. This method creates a new copy of the source node. If the deep parameter is set to true, it imports all children of the specified node. If set to false, it imports only the node itself. This method returns the imported node	 	 	9	Yes
normalizeDocument()	 	 	 	No	Yes
renameNode()	Renames an element or attribute node	 	 	No	Yes*/
}